package cn.wgx.modules.sys.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class SysUserExample {

    /**
     * @mbg.generated Wed Feb 19 04:35:52 CST 2020
     */
    public SysUserExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    protected String orderByClause;

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    protected List<Criteria> oredCriteria;

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    protected boolean distinct;

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public boolean isDistinct() {
        return distinct;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /**
     * @mbg.generated do_not_delete_during_merge Wed Feb 19 04:56:17 CST 2020
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    protected abstract static class GeneratedCriteria {

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        protected List<Criterion> criteria;

        public Criteria andEmailNotEqualTo(String value) {
            addCriterion("t.email <>", value, "email");
            return (Criteria) this;
        }

        public Criteria andDepartmentGreaterThan(String value) {
            addCriterion("t.department >", value, "department");
            return (Criteria) this;
        }

        public Criteria andMimaIsNotNull() {
            addCriterion("t.mima is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.createUserId >=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckIsNull() {
            addCriterion("t.phoneCheck is null");
            return (Criteria) this;
        }

        public Criteria andIs_deleteIsNull() {
            addCriterion("t.is_delete is null");
            return (Criteria) this;
        }

        public Criteria andCountryNotEqualTo(String value) {
            addCriterion("t.country <>", value, "country");
            return (Criteria) this;
        }

        public Criteria andPhotoNotEqualTo(String value) {
            addCriterion("t.photo <>", value, "photo");
            return (Criteria) this;
        }

        public Criteria andKeyWordNotLike(String value) {
            addCriterion("t.keyWord not like", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andKeyWordEqualTo(String value) {
            addCriterion("t.keyWord =", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andRole_idNotIn(List<String> values) {
            addCriterion("t.role_id not in", values, "role_id");
            return (Criteria) this;
        }

        public Criteria andKeyWordIsNull() {
            addCriterion("t.keyWord is null");
            return (Criteria) this;
        }

        public Criteria andStatusLessThan(Integer value) {
            addCriterion("t.status <", value, "status");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckIn(List<Boolean> values) {
            addCriterion("t.phoneCheck in", values, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andNicknameNotBetween(String value1, String value2) {
            addCriterion("t.nickname not between", value1, value2, "nickname");
            return (Criteria) this;
        }

        public Criteria andCityNotEqualTo(String value) {
            addCriterion("t.city <>", value, "city");
            return (Criteria) this;
        }

        public Criteria andRole_idLikeInsensitive(String value) {
            addCriterion("upper(t.role_id) like", value.toUpperCase(), "role_id");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThanOrEqualTo(String value) {
            addCriterion("t.phone <=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andEmailCheckIn(List<Boolean> values) {
            addCriterion("t.emailCheck in", values, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andPhotoLessThan(String value) {
            addCriterion("t.photo <", value, "photo");
            return (Criteria) this;
        }

        public Criteria andSignatureNotBetween(String value1, String value2) {
            addCriterion("t.signature not between", value1, value2, "signature");
            return (Criteria) this;
        }

        public Criteria andStatusNotEqualTo(Integer value) {
            addCriterion("t.status <>", value, "status");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.status >=", value, "status");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThan(Integer value) {
            addCriterion("t.type >", value, "type");
            return (Criteria) this;
        }

        public Criteria andPhotoNotLike(String value) {
            addCriterion("t.photo not like", value, "photo");
            return (Criteria) this;
        }

        public Criteria andMimaNotBetween(String value1, String value2) {
            addCriterion("t.mima not between", value1, value2, "mima");
            return (Criteria) this;
        }

        public Criteria andPhotoEqualTo(String value) {
            addCriterion("t.photo =", value, "photo");
            return (Criteria) this;
        }

        public Criteria andJobLessThanOrEqualTo(String value) {
            addCriterion("t.job <=", value, "job");
            return (Criteria) this;
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public Criteria andUpdateUserIdGreaterThan(Integer value) {
            addCriterion("t.updateUserId >", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("t.createDate is not null");
            return (Criteria) this;
        }

        public Criteria andNicknameBetween(String value1, String value2) {
            addCriterion("t.nickname between", value1, value2, "nickname");
            return (Criteria) this;
        }

        public Criteria andIs_deleteLessThanOrEqualTo(Integer value) {
            addCriterion("t.is_delete <=", value, "is_delete");
            return (Criteria) this;
        }

        public Criteria andJobNotLike(String value) {
            addCriterion("t.job not like", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobEqualTo(String value) {
            addCriterion("t.job =", value, "job");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNull() {
            addCriterion("t.province is null");
            return (Criteria) this;
        }

        public Criteria andRole_idIsNull() {
            addCriterion("t.role_id is null");
            return (Criteria) this;
        }

        public Criteria andUser_idGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.user_id >=", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andPayMimaIsNull() {
            addCriterion("t.payMima is null");
            return (Criteria) this;
        }

        public Criteria andPhotoIsNotNull() {
            addCriterion("t.photo is not null");
            return (Criteria) this;
        }

        public Criteria andJobLessThan(String value) {
            addCriterion("t.job <", value, "job");
            return (Criteria) this;
        }

        public Criteria andUsernameIsNotNull() {
            addCriterion("t.username is not null");
            return (Criteria) this;
        }

        public Criteria andPhotoIn(List<String> values) {
            addCriterion("t.photo in", values, "photo");
            return (Criteria) this;
        }

        public Criteria andEmailCheckNotIn(List<Boolean> values) {
            addCriterion("t.emailCheck not in", values, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andTypeLessThan(Integer value) {
            addCriterion("t.type <", value, "type");
            return (Criteria) this;
        }

        public Criteria andSaltIsNotNull() {
            addCriterion("t.salt is not null");
            return (Criteria) this;
        }

        public Criteria andCountryNotIn(List<String> values) {
            addCriterion("t.country not in", values, "country");
            return (Criteria) this;
        }

        public Criteria andKeyWordNotBetween(String value1, String value2) {
            addCriterion("t.keyWord not between", value1, value2, "keyWord");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("t.createDate between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andEmailCheckGreaterThanOrEqualTo(Boolean value) {
            addCriterion("t.emailCheck >=", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andPhotoBetween(String value1, String value2) {
            addCriterion("t.photo between", value1, value2, "photo");
            return (Criteria) this;
        }

        public Criteria andSaltNotBetween(String value1, String value2) {
            addCriterion("t.salt not between", value1, value2, "salt");
            return (Criteria) this;
        }

        public Criteria andPhotoNotBetween(String value1, String value2) {
            addCriterion("t.photo not between", value1, value2, "photo");
            return (Criteria) this;
        }

        public Criteria andNicknameIsNull() {
            addCriterion("t.nickname is null");
            return (Criteria) this;
        }

        public Criteria andJobIn(List<String> values) {
            addCriterion("t.job in", values, "job");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.sex >=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andTeamBetween(String value1, String value2) {
            addCriterion("t.team between", value1, value2, "team");
            return (Criteria) this;
        }

        public Criteria andPhotoIsNull() {
            addCriterion("t.photo is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNotNull() {
            addCriterion("t.createUserId is not null");
            return (Criteria) this;
        }

        public Criteria andSexIn(List<Integer> values) {
            addCriterion("t.sex in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andJobLikeInsensitive(String value) {
            addCriterion("upper(t.job) like", value.toUpperCase(), "job");
            return (Criteria) this;
        }

        public Criteria andRole_idLike(String value) {
            addCriterion("t.role_id like", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andCityEqualTo(String value) {
            addCriterion("t.city =", value, "city");
            return (Criteria) this;
        }

        public Criteria andDepartmentNotEqualTo(String value) {
            addCriterion("t.department <>", value, "department");
            return (Criteria) this;
        }

        public Criteria andIs_deleteBetween(Integer value1, Integer value2) {
            addCriterion("t.is_delete between", value1, value2, "is_delete");
            return (Criteria) this;
        }

        public Criteria andMimaNotEqualTo(String value) {
            addCriterion("t.mima <>", value, "mima");
            return (Criteria) this;
        }

        public Criteria andNicknameIsNotNull() {
            addCriterion("t.nickname is not null");
            return (Criteria) this;
        }

        public Criteria andUsernameLessThan(String value) {
            addCriterion("t.username <", value, "username");
            return (Criteria) this;
        }

        public Criteria andRole_idNotLike(String value) {
            addCriterion("t.role_id not like", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andRole_idEqualTo(String value) {
            addCriterion("t.role_id =", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotEqualTo(Integer value) {
            addCriterion("t.createUserId <>", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckLessThan(Boolean value) {
            addCriterion("t.phoneCheck <", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andSignatureNotEqualTo(String value) {
            addCriterion("t.signature <>", value, "signature");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("t.createDate <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThan(String value) {
            addCriterion("t.country >", value, "country");
            return (Criteria) this;
        }

        public Criteria andIs_deleteGreaterThan(Integer value) {
            addCriterion("t.is_delete >", value, "is_delete");
            return (Criteria) this;
        }

        public Criteria andProvinceIsNotNull() {
            addCriterion("t.province is not null");
            return (Criteria) this;
        }

        public Criteria andTeamEqualTo(String value) {
            addCriterion("t.team =", value, "team");
            return (Criteria) this;
        }

        public Criteria andEmailNotLike(String value) {
            addCriterion("t.email not like", value, "email");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("t.createDate is null");
            return (Criteria) this;
        }

        public Criteria andUsernameNotLike(String value) {
            addCriterion("t.username not like", value, "username");
            return (Criteria) this;
        }

        public Criteria andUsernameEqualTo(String value) {
            addCriterion("t.username =", value, "username");
            return (Criteria) this;
        }

        public Criteria andKeyWordNotIn(List<String> values) {
            addCriterion("t.keyWord not in", values, "keyWord");
            return (Criteria) this;
        }

        public Criteria andMimaLike(String value) {
            addCriterion("t.mima like", value, "mima");
            return (Criteria) this;
        }

        public Criteria andQQIsNull() {
            addCriterion("t.QQ is null");
            return (Criteria) this;
        }

        public Criteria andUsernameIn(List<String> values) {
            addCriterion("t.username in", values, "username");
            return (Criteria) this;
        }

        public Criteria andProvinceBetween(String value1, String value2) {
            addCriterion("t.province between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andNicknameNotIn(List<String> values) {
            addCriterion("t.nickname not in", values, "nickname");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNull() {
            addCriterion("t.phone is null");
            return (Criteria) this;
        }

        public Criteria andSexLessThanOrEqualTo(Integer value) {
            addCriterion("t.sex <=", value, "sex");
            return (Criteria) this;
        }

        public Criteria andEmailCheckEqualTo(Boolean value) {
            addCriterion("t.emailCheck =", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andTypeBetween(Integer value1, Integer value2) {
            addCriterion("t.type between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andUsernameIsNull() {
            addCriterion("t.username is null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThan(Date value) {
            addCriterion("t.updateDate >", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andProvinceLikeInsensitive(String value) {
            addCriterion("upper(t.province) like", value.toUpperCase(), "province");
            return (Criteria) this;
        }

        public Criteria andKeyWordIsNotNull() {
            addCriterion("t.keyWord is not null");
            return (Criteria) this;
        }

        public Criteria andNicknameGreaterThanOrEqualTo(String value) {
            addCriterion("t.nickname >=", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIn(List<Integer> values) {
            addCriterion("t.createUserId in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andKeyWordBetween(String value1, String value2) {
            addCriterion("t.keyWord between", value1, value2, "keyWord");
            return (Criteria) this;
        }

        public Criteria andQQIsNotNull() {
            addCriterion("t.QQ is not null");
            return (Criteria) this;
        }

        public Criteria andNicknameIn(List<String> values) {
            addCriterion("t.nickname in", values, "nickname");
            return (Criteria) this;
        }

        public Criteria andTypeNotIn(List<Integer> values) {
            addCriterion("t.type not in", values, "type");
            return (Criteria) this;
        }

        public Criteria andJobGreaterThan(String value) {
            addCriterion("t.job >", value, "job");
            return (Criteria) this;
        }

        public Criteria andSaltGreaterThan(String value) {
            addCriterion("t.salt >", value, "salt");
            return (Criteria) this;
        }

        public Criteria andStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("t.status not between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andKeyWordLikeInsensitive(String value) {
            addCriterion("upper(t.keyWord) like", value.toUpperCase(), "keyWord");
            return (Criteria) this;
        }

        public Criteria andStatusLessThanOrEqualTo(Integer value) {
            addCriterion("t.status <=", value, "status");
            return (Criteria) this;
        }

        public Criteria andSignatureGreaterThanOrEqualTo(String value) {
            addCriterion("t.signature >=", value, "signature");
            return (Criteria) this;
        }

        public Criteria andKeyWordNotEqualTo(String value) {
            addCriterion("t.keyWord <>", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andCityIsNotNull() {
            addCriterion("t.city is not null");
            return (Criteria) this;
        }

        public Criteria andKeyWordGreaterThan(String value) {
            addCriterion("t.keyWord >", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andUpdateDateBetween(Date value1, Date value2) {
            addCriterion("t.updateDate between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andDepartmentLikeInsensitive(String value) {
            addCriterion("upper(t.department) like", value.toUpperCase(), "department");
            return (Criteria) this;
        }

        public Criteria andIs_deleteGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.is_delete >=", value, "is_delete");
            return (Criteria) this;
        }

        public Criteria andCityBetween(String value1, String value2) {
            addCriterion("t.city between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andNicknameGreaterThan(String value) {
            addCriterion("t.nickname >", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("t.updateUserId not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUser_idIsNull() {
            addCriterion("t.user_id is null");
            return (Criteria) this;
        }

        public Criteria andTeamNotBetween(String value1, String value2) {
            addCriterion("t.team not between", value1, value2, "team");
            return (Criteria) this;
        }

        public Criteria andPhotoLessThanOrEqualTo(String value) {
            addCriterion("t.photo <=", value, "photo");
            return (Criteria) this;
        }

        public Criteria andUser_idNotEqualTo(Integer value) {
            addCriterion("t.user_id <>", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andEmailCheckNotBetween(Boolean value1, Boolean value2) {
            addCriterion("t.emailCheck not between", value1, value2, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andCityIsNull() {
            addCriterion("t.city is null");
            return (Criteria) this;
        }

        public Criteria andMimaBetween(String value1, String value2) {
            addCriterion("t.mima between", value1, value2, "mima");
            return (Criteria) this;
        }

        public Criteria andSexLessThan(Integer value) {
            addCriterion("t.sex <", value, "sex");
            return (Criteria) this;
        }

        public Criteria andCityLikeInsensitive(String value) {
            addCriterion("upper(t.city) like", value.toUpperCase(), "city");
            return (Criteria) this;
        }

        public Criteria andSexNotIn(List<Integer> values) {
            addCriterion("t.sex not in", values, "sex");
            return (Criteria) this;
        }

        public Criteria andRole_idBetween(String value1, String value2) {
            addCriterion("t.role_id between", value1, value2, "role_id");
            return (Criteria) this;
        }

        public Criteria andCityLike(String value) {
            addCriterion("t.city like", value, "city");
            return (Criteria) this;
        }

        public Criteria andMimaLikeInsensitive(String value) {
            addCriterion("upper(t.mima) like", value.toUpperCase(), "mima");
            return (Criteria) this;
        }

        public Criteria andUsernameNotEqualTo(String value) {
            addCriterion("t.username <>", value, "username");
            return (Criteria) this;
        }

        public Criteria andSignatureIsNotNull() {
            addCriterion("t.signature is not null");
            return (Criteria) this;
        }

        public Criteria andSexIsNotNull() {
            addCriterion("t.sex is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(Integer value) {
            addCriterion("t.updateUserId <>", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUser_idNotBetween(Integer value1, Integer value2) {
            addCriterion("t.user_id not between", value1, value2, "user_id");
            return (Criteria) this;
        }

        public Criteria andSignatureLessThan(String value) {
            addCriterion("t.signature <", value, "signature");
            return (Criteria) this;
        }

        public Criteria andPhoneNotIn(List<String> values) {
            addCriterion("t.phone not in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andJobNotEqualTo(String value) {
            addCriterion("t.job <>", value, "job");
            return (Criteria) this;
        }

        public Criteria andJobNotBetween(String value1, String value2) {
            addCriterion("t.job not between", value1, value2, "job");
            return (Criteria) this;
        }

        public Criteria andPhoneLikeInsensitive(String value) {
            addCriterion("upper(t.phone) like", value.toUpperCase(), "phone");
            return (Criteria) this;
        }

        public Criteria andStatusNotIn(List<Integer> values) {
            addCriterion("t.status not in", values, "status");
            return (Criteria) this;
        }

        public Criteria andJobIsNull() {
            addCriterion("t.job is null");
            return (Criteria) this;
        }

        public Criteria andMimaGreaterThanOrEqualTo(String value) {
            addCriterion("t.mima >=", value, "mima");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("t.createDate >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andUsernameLessThanOrEqualTo(String value) {
            addCriterion("t.username <=", value, "username");
            return (Criteria) this;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("t.createDate <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andSexGreaterThan(Integer value) {
            addCriterion("t.sex >", value, "sex");
            return (Criteria) this;
        }

        public Criteria andSignatureIsNull() {
            addCriterion("t.signature is null");
            return (Criteria) this;
        }

        public Criteria andProvinceNotBetween(String value1, String value2) {
            addCriterion("t.province not between", value1, value2, "province");
            return (Criteria) this;
        }

        public Criteria andEmailLessThanOrEqualTo(String value) {
            addCriterion("t.email <=", value, "email");
            return (Criteria) this;
        }

        public Criteria andKeyWordGreaterThanOrEqualTo(String value) {
            addCriterion("t.keyWord >=", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andSignatureIn(List<String> values) {
            addCriterion("t.signature in", values, "signature");
            return (Criteria) this;
        }

        public Criteria andCountryNotLike(String value) {
            addCriterion("t.country not like", value, "country");
            return (Criteria) this;
        }

        public Criteria andPayMimaNotIn(List<String> values) {
            addCriterion("t.payMima not in", values, "payMima");
            return (Criteria) this;
        }

        public Criteria andCountryEqualTo(String value) {
            addCriterion("t.country =", value, "country");
            return (Criteria) this;
        }

        public Criteria andIs_deleteNotIn(List<Integer> values) {
            addCriterion("t.is_delete not in", values, "is_delete");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThan(String value) {
            addCriterion("t.phone >", value, "phone");
            return (Criteria) this;
        }

        public Criteria andRole_idLessThan(String value) {
            addCriterion("t.role_id <", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andDepartmentIsNotNull() {
            addCriterion("t.department is not null");
            return (Criteria) this;
        }

        public Criteria andEmailCheckNotEqualTo(Boolean value) {
            addCriterion("t.emailCheck <>", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<Integer> values) {
            addCriterion("t.updateUserId in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andSignatureBetween(String value1, String value2) {
            addCriterion("t.signature between", value1, value2, "signature");
            return (Criteria) this;
        }

        public Criteria andNicknameLike(String value) {
            addCriterion("t.nickname like", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("t.createUserId between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andSignatureLessThanOrEqualTo(String value) {
            addCriterion("t.signature <=", value, "signature");
            return (Criteria) this;
        }

        public Criteria andSignatureLikeInsensitive(String value) {
            addCriterion("upper(t.signature) like", value.toUpperCase(), "signature");
            return (Criteria) this;
        }

        public Criteria andDepartmentIsNull() {
            addCriterion("t.department is null");
            return (Criteria) this;
        }

        public Criteria andUser_idLessThan(Integer value) {
            addCriterion("t.user_id <", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andJobBetween(String value1, String value2) {
            addCriterion("t.job between", value1, value2, "job");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotIn(List<Date> values) {
            addCriterion("t.updateDate not in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andStatusGreaterThan(Integer value) {
            addCriterion("t.status >", value, "status");
            return (Criteria) this;
        }

        public Criteria andTeamLike(String value) {
            addCriterion("t.team like", value, "team");
            return (Criteria) this;
        }

        public Criteria andDepartmentLessThan(String value) {
            addCriterion("t.department <", value, "department");
            return (Criteria) this;
        }

        public Criteria andEmailIsNull() {
            addCriterion("t.email is null");
            return (Criteria) this;
        }

        public Criteria andSignatureNotIn(List<String> values) {
            addCriterion("t.signature not in", values, "signature");
            return (Criteria) this;
        }

        public Criteria andKeyWordLessThan(String value) {
            addCriterion("t.keyWord <", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThanOrEqualTo(String value) {
            addCriterion("t.province <=", value, "province");
            return (Criteria) this;
        }

        public Criteria andNicknameNotEqualTo(String value) {
            addCriterion("t.nickname <>", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andPayMimaNotEqualTo(String value) {
            addCriterion("t.payMima <>", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andStatusIsNotNull() {
            addCriterion("t.status is not null");
            return (Criteria) this;
        }

        public Criteria andSignatureNotLike(String value) {
            addCriterion("t.signature not like", value, "signature");
            return (Criteria) this;
        }

        public Criteria andSexEqualTo(Integer value) {
            addCriterion("t.sex =", value, "sex");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIn(List<Date> values) {
            addCriterion("t.updateDate in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andPayMimaGreaterThan(String value) {
            addCriterion("t.payMima >", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(Integer value1, Integer value2) {
            addCriterion("t.updateUserId between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andRole_idIn(List<String> values) {
            addCriterion("t.role_id in", values, "role_id");
            return (Criteria) this;
        }

        public Criteria andPhoneIsNotNull() {
            addCriterion("t.phone is not null");
            return (Criteria) this;
        }

        public Criteria andCityLessThanOrEqualTo(String value) {
            addCriterion("t.city <=", value, "city");
            return (Criteria) this;
        }

        public Criteria andProvinceLike(String value) {
            addCriterion("t.province like", value, "province");
            return (Criteria) this;
        }

        public Criteria andStatusEqualTo(Integer value) {
            addCriterion("t.status =", value, "status");
            return (Criteria) this;
        }

        public Criteria andEmailLessThan(String value) {
            addCriterion("t.email <", value, "email");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckBetween(Boolean value1, Boolean value2) {
            addCriterion("t.phoneCheck between", value1, value2, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andEmailIsNotNull() {
            addCriterion("t.email is not null");
            return (Criteria) this;
        }

        public Criteria andEmailEqualTo(String value) {
            addCriterion("t.email =", value, "email");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckGreaterThan(Boolean value) {
            addCriterion("t.phoneCheck >", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andDepartmentIn(List<String> values) {
            addCriterion("t.department in", values, "department");
            return (Criteria) this;
        }

        public Criteria andJobIsNotNull() {
            addCriterion("t.job is not null");
            return (Criteria) this;
        }

        public Criteria andDepartmentNotLike(String value) {
            addCriterion("t.department not like", value, "department");
            return (Criteria) this;
        }

        public Criteria andNicknameLessThan(String value) {
            addCriterion("t.nickname <", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andJobNotIn(List<String> values) {
            addCriterion("t.job not in", values, "job");
            return (Criteria) this;
        }

        public Criteria andDepartmentEqualTo(String value) {
            addCriterion("t.department =", value, "department");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("t.createDate >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andSignatureLike(String value) {
            addCriterion("t.signature like", value, "signature");
            return (Criteria) this;
        }

        public Criteria andKeyWordIn(List<String> values) {
            addCriterion("t.keyWord in", values, "keyWord");
            return (Criteria) this;
        }

        public Criteria andSaltNotIn(List<String> values) {
            addCriterion("t.salt not in", values, "salt");
            return (Criteria) this;
        }

        public Criteria andIs_deleteIn(List<Integer> values) {
            addCriterion("t.is_delete in", values, "is_delete");
            return (Criteria) this;
        }

        public Criteria andSignatureGreaterThan(String value) {
            addCriterion("t.signature >", value, "signature");
            return (Criteria) this;
        }

        public Criteria andPhoneGreaterThanOrEqualTo(String value) {
            addCriterion("t.phone >=", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPayMimaNotLike(String value) {
            addCriterion("t.payMima not like", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andPayMimaEqualTo(String value) {
            addCriterion("t.payMima =", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andIs_deleteNotEqualTo(Integer value) {
            addCriterion("t.is_delete <>", value, "is_delete");
            return (Criteria) this;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public Criteria andKeyWordLike(String value) {
            addCriterion("t.keyWord like", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andPayMimaLike(String value) {
            addCriterion("t.payMima like", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andCountryGreaterThanOrEqualTo(String value) {
            addCriterion("t.country >=", value, "country");
            return (Criteria) this;
        }

        public Criteria andJobGreaterThanOrEqualTo(String value) {
            addCriterion("t.job >=", value, "job");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("t.createDate not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andEmailNotIn(List<String> values) {
            addCriterion("t.email not in", values, "email");
            return (Criteria) this;
        }

        public Criteria andEmailIn(List<String> values) {
            addCriterion("t.email in", values, "email");
            return (Criteria) this;
        }

        public Criteria andPhoneNotEqualTo(String value) {
            addCriterion("t.phone <>", value, "phone");
            return (Criteria) this;
        }

        public Criteria andSexBetween(Integer value1, Integer value2) {
            addCriterion("t.sex between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andEmailCheckIsNull() {
            addCriterion("t.emailCheck is null");
            return (Criteria) this;
        }

        public Criteria andMimaNotIn(List<String> values) {
            addCriterion("t.mima not in", values, "mima");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotIn(List<Integer> values) {
            addCriterion("t.createUserId not in", values, "createUserId");
            return (Criteria) this;
        }

        public Criteria andMimaLessThan(String value) {
            addCriterion("t.mima <", value, "mima");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("t.createDate not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andDepartmentBetween(String value1, String value2) {
            addCriterion("t.department between", value1, value2, "department");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdIsNull() {
            addCriterion("t.createUserId is null");
            return (Criteria) this;
        }

        public Criteria andStatusIn(List<Integer> values) {
            addCriterion("t.status in", values, "status");
            return (Criteria) this;
        }

        public Criteria andTeamLessThan(String value) {
            addCriterion("t.team <", value, "team");
            return (Criteria) this;
        }

        public Criteria andDepartmentNotBetween(String value1, String value2) {
            addCriterion("t.department not between", value1, value2, "department");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.updateUserId >=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckNotEqualTo(Boolean value) {
            addCriterion("t.phoneCheck <>", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andRole_idNotBetween(String value1, String value2) {
            addCriterion("t.role_id not between", value1, value2, "role_id");
            return (Criteria) this;
        }

        public Criteria andTeamNotEqualTo(String value) {
            addCriterion("t.team <>", value, "team");
            return (Criteria) this;
        }

        public Criteria andCountryNotBetween(String value1, String value2) {
            addCriterion("t.country not between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andIs_deleteEqualTo(Integer value) {
            addCriterion("t.is_delete =", value, "is_delete");
            return (Criteria) this;
        }

        public Criteria andProvinceLessThan(String value) {
            addCriterion("t.province <", value, "province");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThan(String value) {
            addCriterion("t.email >", value, "email");
            return (Criteria) this;
        }

        public Criteria andQQNotEqualTo(String value) {
            addCriterion("t.QQ <>", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andMimaNotLike(String value) {
            addCriterion("t.mima not like", value, "mima");
            return (Criteria) this;
        }

        public Criteria andSaltLessThanOrEqualTo(String value) {
            addCriterion("t.salt <=", value, "salt");
            return (Criteria) this;
        }

        public Criteria andQQLessThan(String value) {
            addCriterion("t.QQ <", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andUser_idEqualTo(Integer value) {
            addCriterion("t.user_id =", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andTypeIsNotNull() {
            addCriterion("t.type is not null");
            return (Criteria) this;
        }

        public Criteria andQQGreaterThanOrEqualTo(String value) {
            addCriterion("t.QQ >=", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andMimaGreaterThan(String value) {
            addCriterion("t.mima >", value, "mima");
            return (Criteria) this;
        }

        public Criteria andPhoneLessThan(String value) {
            addCriterion("t.phone <", value, "phone");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThanOrEqualTo(String value) {
            addCriterion("t.province >=", value, "province");
            return (Criteria) this;
        }

        public Criteria andSaltBetween(String value1, String value2) {
            addCriterion("t.salt between", value1, value2, "salt");
            return (Criteria) this;
        }

        public Criteria andSaltGreaterThanOrEqualTo(String value) {
            addCriterion("t.salt >=", value, "salt");
            return (Criteria) this;
        }

        public Criteria andMimaIn(List<String> values) {
            addCriterion("t.mima in", values, "mima");
            return (Criteria) this;
        }

        public Criteria andUsernameLikeInsensitive(String value) {
            addCriterion("upper(t.username) like", value.toUpperCase(), "username");
            return (Criteria) this;
        }

        public Criteria andPayMimaNotBetween(String value1, String value2) {
            addCriterion("t.payMima not between", value1, value2, "payMima");
            return (Criteria) this;
        }

        public Criteria andNicknameNotLike(String value) {
            addCriterion("t.nickname not like", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andTeamIn(List<String> values) {
            addCriterion("t.team in", values, "team");
            return (Criteria) this;
        }

        public Criteria andTypeIsNull() {
            addCriterion("t.type is null");
            return (Criteria) this;
        }

        public Criteria andCityNotIn(List<String> values) {
            addCriterion("t.city not in", values, "city");
            return (Criteria) this;
        }

        public Criteria andRole_idLessThanOrEqualTo(String value) {
            addCriterion("t.role_id <=", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andPhoneBetween(String value1, String value2) {
            addCriterion("t.phone between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdGreaterThan(Integer value) {
            addCriterion("t.createUserId >", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andSaltLikeInsensitive(String value) {
            addCriterion("upper(t.salt) like", value.toUpperCase(), "salt");
            return (Criteria) this;
        }

        public Criteria andProvinceNotLike(String value) {
            addCriterion("t.province not like", value, "province");
            return (Criteria) this;
        }

        public Criteria andUser_idLessThanOrEqualTo(Integer value) {
            addCriterion("t.user_id <=", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andProvinceEqualTo(String value) {
            addCriterion("t.province =", value, "province");
            return (Criteria) this;
        }

        public Criteria andEmailLikeInsensitive(String value) {
            addCriterion("upper(t.email) like", value.toUpperCase(), "email");
            return (Criteria) this;
        }

        public Criteria andTypeIn(List<Integer> values) {
            addCriterion("t.type in", values, "type");
            return (Criteria) this;
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andProvinceIn(List<String> values) {
            addCriterion("t.province in", values, "province");
            return (Criteria) this;
        }

        public Criteria andMimaLessThanOrEqualTo(String value) {
            addCriterion("t.mima <=", value, "mima");
            return (Criteria) this;
        }

        public Criteria andIs_deleteLessThan(Integer value) {
            addCriterion("t.is_delete <", value, "is_delete");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("t.createDate in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andUsernameNotBetween(String value1, String value2) {
            addCriterion("t.username not between", value1, value2, "username");
            return (Criteria) this;
        }

        public Criteria andQQIn(List<String> values) {
            addCriterion("t.QQ in", values, "QQ");
            return (Criteria) this;
        }

        public Criteria andKeyWordLessThanOrEqualTo(String value) {
            addCriterion("t.keyWord <=", value, "keyWord");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThan(Date value) {
            addCriterion("t.updateDate <", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("t.updateUserId is null");
            return (Criteria) this;
        }

        public Criteria andTeamGreaterThan(String value) {
            addCriterion("t.team >", value, "team");
            return (Criteria) this;
        }

        public Criteria andPhotoNotIn(List<String> values) {
            addCriterion("t.photo not in", values, "photo");
            return (Criteria) this;
        }

        public Criteria andUser_idBetween(Integer value1, Integer value2) {
            addCriterion("t.user_id between", value1, value2, "user_id");
            return (Criteria) this;
        }

        public Criteria andDepartmentLessThanOrEqualTo(String value) {
            addCriterion("t.department <=", value, "department");
            return (Criteria) this;
        }

        public Criteria andPhoneIn(List<String> values) {
            addCriterion("t.phone in", values, "phone");
            return (Criteria) this;
        }

        public Criteria andSaltNotLike(String value) {
            addCriterion("t.salt not like", value, "salt");
            return (Criteria) this;
        }

        public Criteria andSaltEqualTo(String value) {
            addCriterion("t.salt =", value, "salt");
            return (Criteria) this;
        }

        public Criteria andSaltNotEqualTo(String value) {
            addCriterion("t.salt <>", value, "salt");
            return (Criteria) this;
        }

        public Criteria andDepartmentLike(String value) {
            addCriterion("t.department like", value, "department");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThan(String value) {
            addCriterion("t.city >", value, "city");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(Integer value) {
            addCriterion("t.updateUserId =", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andJobLike(String value) {
            addCriterion("t.job like", value, "job");
            return (Criteria) this;
        }

        public Criteria andMimaIsNull() {
            addCriterion("t.mima is null");
            return (Criteria) this;
        }

        public Criteria andEmailCheckIsNotNull() {
            addCriterion("t.emailCheck is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThan(Integer value) {
            addCriterion("t.createUserId <", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andTeamIsNull() {
            addCriterion("t.team is null");
            return (Criteria) this;
        }

        public Criteria andPayMimaBetween(String value1, String value2) {
            addCriterion("t.payMima between", value1, value2, "payMima");
            return (Criteria) this;
        }

        public Criteria andQQNotIn(List<String> values) {
            addCriterion("t.QQ not in", values, "QQ");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("t.updateDate >=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUsernameGreaterThanOrEqualTo(String value) {
            addCriterion("t.username >=", value, "username");
            return (Criteria) this;
        }

        public Criteria andTypeNotEqualTo(Integer value) {
            addCriterion("t.type <>", value, "type");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckNotIn(List<Boolean> values) {
            addCriterion("t.phoneCheck not in", values, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andTeamLessThanOrEqualTo(String value) {
            addCriterion("t.team <=", value, "team");
            return (Criteria) this;
        }

        public Criteria andPayMimaLikeInsensitive(String value) {
            addCriterion("upper(t.payMima) like", value.toUpperCase(), "payMima");
            return (Criteria) this;
        }

        public Criteria andDepartmentGreaterThanOrEqualTo(String value) {
            addCriterion("t.department >=", value, "department");
            return (Criteria) this;
        }

        public Criteria andPayMimaIsNotNull() {
            addCriterion("t.payMima is not null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdNotBetween(Integer value1, Integer value2) {
            addCriterion("t.createUserId not between", value1, value2, "createUserId");
            return (Criteria) this;
        }

        public Criteria andEmailNotBetween(String value1, String value2) {
            addCriterion("t.email not between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andUsernameNotIn(List<String> values) {
            addCriterion("t.username not in", values, "username");
            return (Criteria) this;
        }

        public Criteria andTypeLessThanOrEqualTo(Integer value) {
            addCriterion("t.type <=", value, "type");
            return (Criteria) this;
        }

        public Criteria andPhotoGreaterThan(String value) {
            addCriterion("t.photo >", value, "photo");
            return (Criteria) this;
        }

        public Criteria andTypeEqualTo(Integer value) {
            addCriterion("t.type =", value, "type");
            return (Criteria) this;
        }

        public Criteria andPayMimaGreaterThanOrEqualTo(String value) {
            addCriterion("t.payMima >=", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNull() {
            addCriterion("t.updateDate is null");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckEqualTo(Boolean value) {
            addCriterion("t.phoneCheck =", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andSignatureEqualTo(String value) {
            addCriterion("t.signature =", value, "signature");
            return (Criteria) this;
        }

        public Criteria andRole_idGreaterThan(String value) {
            addCriterion("t.role_id >", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andSaltLessThan(String value) {
            addCriterion("t.salt <", value, "salt");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckNotBetween(Boolean value1, Boolean value2) {
            addCriterion("t.phoneCheck not between", value1, value2, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("t.createDate <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andPhoneNotBetween(String value1, String value2) {
            addCriterion("t.phone not between", value1, value2, "phone");
            return (Criteria) this;
        }

        public Criteria andQQBetween(String value1, String value2) {
            addCriterion("t.QQ between", value1, value2, "QQ");
            return (Criteria) this;
        }

        public Criteria andQQGreaterThan(String value) {
            addCriterion("t.QQ >", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andNicknameLikeInsensitive(String value) {
            addCriterion("upper(t.nickname) like", value.toUpperCase(), "nickname");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNotNull() {
            addCriterion("t.updateDate is not null");
            return (Criteria) this;
        }

        public Criteria andIs_deleteIsNotNull() {
            addCriterion("t.is_delete is not null");
            return (Criteria) this;
        }

        public Criteria andPayMimaLessThanOrEqualTo(String value) {
            addCriterion("t.payMima <=", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andRole_idIsNotNull() {
            addCriterion("t.role_id is not null");
            return (Criteria) this;
        }

        public Criteria andSaltIsNull() {
            addCriterion("t.salt is null");
            return (Criteria) this;
        }

        public Criteria andUser_idNotIn(List<Integer> values) {
            addCriterion("t.user_id not in", values, "user_id");
            return (Criteria) this;
        }

        public Criteria andQQLikeInsensitive(String value) {
            addCriterion("upper(t.QQ) like", value.toUpperCase(), "QQ");
            return (Criteria) this;
        }

        public Criteria andUsernameGreaterThan(String value) {
            addCriterion("t.username >", value, "username");
            return (Criteria) this;
        }

        public Criteria andQQLessThanOrEqualTo(String value) {
            addCriterion("t.QQ <=", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andQQLike(String value) {
            addCriterion("t.QQ like", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andCountryLessThan(String value) {
            addCriterion("t.country <", value, "country");
            return (Criteria) this;
        }

        public Criteria andCityGreaterThanOrEqualTo(String value) {
            addCriterion("t.city >=", value, "city");
            return (Criteria) this;
        }

        public Criteria andEmailGreaterThanOrEqualTo(String value) {
            addCriterion("t.email >=", value, "email");
            return (Criteria) this;
        }

        public Criteria andSexNotBetween(Integer value1, Integer value2) {
            addCriterion("t.sex not between", value1, value2, "sex");
            return (Criteria) this;
        }

        public Criteria andUser_idIsNotNull() {
            addCriterion("t.user_id is not null");
            return (Criteria) this;
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        public Criteria andPhoneCheckIsNotNull() {
            addCriterion("t.phoneCheck is not null");
            return (Criteria) this;
        }

        public Criteria andSaltIn(List<String> values) {
            addCriterion("t.salt in", values, "salt");
            return (Criteria) this;
        }

        public Criteria andPhotoLike(String value) {
            addCriterion("t.photo like", value, "photo");
            return (Criteria) this;
        }

        public Criteria andPhotoLikeInsensitive(String value) {
            addCriterion("upper(t.photo) like", value.toUpperCase(), "photo");
            return (Criteria) this;
        }

        public Criteria andSexIsNull() {
            addCriterion("t.sex is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("t.updateUserId is not null");
            return (Criteria) this;
        }

        public Criteria andQQNotLike(String value) {
            addCriterion("t.QQ not like", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andQQEqualTo(String value) {
            addCriterion("t.QQ =", value, "QQ");
            return (Criteria) this;
        }

        public Criteria andUpdateDateEqualTo(Date value) {
            addCriterion("t.updateDate =", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andCityNotLike(String value) {
            addCriterion("t.city not like", value, "city");
            return (Criteria) this;
        }

        public Criteria andEmailCheckLessThanOrEqualTo(Boolean value) {
            addCriterion("t.emailCheck <=", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("t.createDate =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andPhoneNotLike(String value) {
            addCriterion("t.phone not like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andPhoneEqualTo(String value) {
            addCriterion("t.phone =", value, "phone");
            return (Criteria) this;
        }

        public Criteria andTeamLikeInsensitive(String value) {
            addCriterion("upper(t.team) like", value.toUpperCase(), "team");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(Integer value) {
            addCriterion("t.updateUserId <", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andIs_deleteNotBetween(Integer value1, Integer value2) {
            addCriterion("t.is_delete not between", value1, value2, "is_delete");
            return (Criteria) this;
        }

        public Criteria andEmailCheckGreaterThan(Boolean value) {
            addCriterion("t.emailCheck >", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andProvinceNotIn(List<String> values) {
            addCriterion("t.province not in", values, "province");
            return (Criteria) this;
        }

        public Criteria andTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("t.type not between", value1, value2, "type");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckGreaterThanOrEqualTo(Boolean value) {
            addCriterion("t.phoneCheck >=", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andEmailCheckLessThan(Boolean value) {
            addCriterion("t.emailCheck <", value, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andCountryIn(List<String> values) {
            addCriterion("t.country in", values, "country");
            return (Criteria) this;
        }

        public Criteria andUser_idGreaterThan(Integer value) {
            addCriterion("t.user_id >", value, "user_id");
            return (Criteria) this;
        }

        public Criteria andTeamGreaterThanOrEqualTo(String value) {
            addCriterion("t.team >=", value, "team");
            return (Criteria) this;
        }

        public Criteria andPayMimaLessThan(String value) {
            addCriterion("t.payMima <", value, "payMima");
            return (Criteria) this;
        }

        public Criteria andTeamNotLike(String value) {
            addCriterion("t.team not like", value, "team");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("t.createUserId <=", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andQQNotBetween(String value1, String value2) {
            addCriterion("t.QQ not between", value1, value2, "QQ");
            return (Criteria) this;
        }

        public Criteria andTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("t.type >=", value, "type");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(Integer value) {
            addCriterion("t.updateUserId <=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andCountryLike(String value) {
            addCriterion("t.country like", value, "country");
            return (Criteria) this;
        }

        public Criteria andProvinceNotEqualTo(String value) {
            addCriterion("t.province <>", value, "province");
            return (Criteria) this;
        }

        public Criteria andNicknameLessThanOrEqualTo(String value) {
            addCriterion("t.nickname <=", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andCountryLessThanOrEqualTo(String value) {
            addCriterion("t.country <=", value, "country");
            return (Criteria) this;
        }

        public Criteria andUsernameBetween(String value1, String value2) {
            addCriterion("t.username between", value1, value2, "username");
            return (Criteria) this;
        }

        public Criteria andMimaEqualTo(String value) {
            addCriterion("t.mima =", value, "mima");
            return (Criteria) this;
        }

        public Criteria andSaltLike(String value) {
            addCriterion("t.salt like", value, "salt");
            return (Criteria) this;
        }

        public Criteria andPhoneCheckLessThanOrEqualTo(Boolean value) {
            addCriterion("t.phoneCheck <=", value, "phoneCheck");
            return (Criteria) this;
        }

        public Criteria andPhoneLike(String value) {
            addCriterion("t.phone like", value, "phone");
            return (Criteria) this;
        }

        public Criteria andCityLessThan(String value) {
            addCriterion("t.city <", value, "city");
            return (Criteria) this;
        }

        public Criteria andTeamNotIn(List<String> values) {
            addCriterion("t.team not in", values, "team");
            return (Criteria) this;
        }

        public Criteria andCountryIsNull() {
            addCriterion("t.country is null");
            return (Criteria) this;
        }

        public Criteria andCreateUserIdEqualTo(Integer value) {
            addCriterion("t.createUserId =", value, "createUserId");
            return (Criteria) this;
        }

        public Criteria andCountryIsNotNull() {
            addCriterion("t.country is not null");
            return (Criteria) this;
        }

        public Criteria andPhotoGreaterThanOrEqualTo(String value) {
            addCriterion("t.photo >=", value, "photo");
            return (Criteria) this;
        }

        public Criteria andDepartmentNotIn(List<String> values) {
            addCriterion("t.department not in", values, "department");
            return (Criteria) this;
        }

        public Criteria andEmailBetween(String value1, String value2) {
            addCriterion("t.email between", value1, value2, "email");
            return (Criteria) this;
        }

        public Criteria andTeamIsNotNull() {
            addCriterion("t.team is not null");
            return (Criteria) this;
        }

        public Criteria andNicknameEqualTo(String value) {
            addCriterion("t.nickname =", value, "nickname");
            return (Criteria) this;
        }

        public Criteria andProvinceGreaterThan(String value) {
            addCriterion("t.province >", value, "province");
            return (Criteria) this;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        public Criteria andCountryBetween(String value1, String value2) {
            addCriterion("t.country between", value1, value2, "country");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotEqualTo(Date value) {
            addCriterion("t.updateDate <>", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andPayMimaIn(List<String> values) {
            addCriterion("t.payMima in", values, "payMima");
            return (Criteria) this;
        }

        public Criteria andStatusIsNull() {
            addCriterion("t.status is null");
            return (Criteria) this;
        }

        public Criteria andRole_idGreaterThanOrEqualTo(String value) {
            addCriterion("t.role_id >=", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotBetween(Date value1, Date value2) {
            addCriterion("t.updateDate not between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andCountryLikeInsensitive(String value) {
            addCriterion("upper(t.country) like", value.toUpperCase(), "country");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThanOrEqualTo(Date value) {
            addCriterion("t.updateDate <=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUsernameLike(String value) {
            addCriterion("t.username like", value, "username");
            return (Criteria) this;
        }

        public Criteria andStatusBetween(Integer value1, Integer value2) {
            addCriterion("t.status between", value1, value2, "status");
            return (Criteria) this;
        }

        public Criteria andCityNotBetween(String value1, String value2) {
            addCriterion("t.city not between", value1, value2, "city");
            return (Criteria) this;
        }

        public Criteria andCityIn(List<String> values) {
            addCriterion("t.city in", values, "city");
            return (Criteria) this;
        }

        public Criteria andRole_idNotEqualTo(String value) {
            addCriterion("t.role_id <>", value, "role_id");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<Integer> values) {
            addCriterion("t.updateUserId not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andEmailCheckBetween(Boolean value1, Boolean value2) {
            addCriterion("t.emailCheck between", value1, value2, "emailCheck");
            return (Criteria) this;
        }

        public Criteria andEmailLike(String value) {
            addCriterion("t.email like", value, "email");
            return (Criteria) this;
        }

        public Criteria andUser_idIn(List<Integer> values) {
            addCriterion("t.user_id in", values, "user_id");
            return (Criteria) this;
        }

        public Criteria andSexNotEqualTo(Integer value) {
            addCriterion("t.sex <>", value, "sex");
            return (Criteria) this;
        }
    }

    /**
     * @mbg.generated Wed Feb 19 04:56:17 CST 2020
     */
    public static class Criterion {

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        private String condition;

        private boolean singleValue;

        private boolean noValue;

        private Object secondValue;

        private Object value;

        private String typeHandler;

        private boolean betweenValue;

        private boolean listValue;

        public boolean isSingleValue() {
            return singleValue;
        }

        public String getCondition() {
            return condition;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        public boolean isListValue() {
            return listValue;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public Object getValue() {
            return value;
        }
    }
}
